package com.data.bobostructure.chapter1.practice;

/**
 * Created by wangbing on 2018/3/30.
 */

import com.data.bobostructure.utils.SortUtils;

/**
 * 自己实现的冒泡排序；
 */
public class BubbleSort2 {
    private static void BubbleSort(Comparable[] arr){
        int len = arr.length;
        boolean sorted;
        do{
            sorted = false;
            for (int i=1;i<len;i++){
                if (arr[i].compareTo(arr[i-1])<0){
                    SortUtils.swap(arr,i,i-1);
                    sorted=true;

                }

            }
//            优化？每一趟bubble sort 都将最大的元素放在了最后的位置
            len--;
        }
        while (sorted);


    }
    public static void sort(Comparable[] arr){

    }
    public static void main(String[] args) {
        Comparable[] arr = SortUtils.generateRandomArray(100000,1,3000000);
        BubbleSort(arr);
        SortUtils.testSort("com.data.structure.chapter1.practice.BubbleSort2","sort",arr);


    }
    }


